#ifndef STACK_H_
#define STACK_H_

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <assert.h>

typedef int STDataType;

typedef struct Stack
{
    STDataType data;    //数据域
    struct Stack *next; //指针域
} ST;

void StackDestory(ST **phead);            //释放栈
void StackPush(ST **phead, STDataType x); //入栈
void StackPop(ST **phead);                //出栈
bool StackEmpty(ST *phead);               //判断栈是否为空
int StackTop(ST *phead);                  //栈顶节点的值

#endif